// var LODOPB = require('http://192.168.1.111:8000/CLodopfuncs.js?name=LODOPB')

function netPrint(data) {
   var list = data.list;
   //必须打印初始化一下
   LODOPB.PRINT_INIT("");
   //设置页面 ，10mm 页面底部边距 ，3和CreateCustomPage高度为自适应
   // LODOP.SET_PRINT_PAGESIZE(3,"79mm","10mm","CreateCustomPage");
   LODOPB.SET_PRINT_STYLE("Bold", 1);
   LODOPB.SET_PRINT_STYLEA(0, "Alignment", 2);
   LODOPB.ADD_PRINT_TEXT("3.2mm", "10mm", "90%", "5mm", data.table);
   LODOPB.ADD_PRINT_LINE("17mm", "-56.0mm", "17mm", "56mm", 2, 0);
   LODOPB.ADD_PRINT_LINE("18mm", "-56.0mm", "18mm", "56mm", 2, 0);
   //LODOPB.ADD_PRINT_LINE("21.2mm","-63.8mm","20.9mm","68.5mm",2,0);
   //LODOPB.ADD_PRINT_LINE("22.2mm","-63.8mm","22mm","68.5mm",2,0);

   LODOPB.ADD_PRINT_TEXT("12mm", "2.4mm", "30mm", "5mm", "菜名");
   LODOPB.ADD_PRINT_TEXT("12mm", "30mm", "10mm", "5mm", "数量");
   LODOPB.ADD_PRINT_TEXT("12mm", "38mm", "16mm", "5mm", "单价");


   if (list.length > 0) {
      var lineHeight = 20;
      for (var i = 0; i < list.length; i++) {
         var pobj = list[i];
         LODOPB.ADD_PRINT_TEXT("" + lineHeight + "mm", "2mm", "30mm", "5mm", "" + pobj.product_name);
         LODOPB.ADD_PRINT_TEXT("" + lineHeight + "mm", "30mm", "8mm", "5mm", "" + pobj.num);
         LODOPB.ADD_PRINT_TEXT("" + lineHeight + "mm", "36mm", "16mm", "5mm", "" + pobj.price);
         lineHeight += 5;
      }
   }

   LODOPB.ADD_PRINT_LINE("" + lineHeight + "mm", "-56.0mm", "" + lineHeight + "mm", "56mm", 2, 0);
   lineHeight += 1;
   LODOPB.ADD_PRINT_LINE("" + lineHeight + "mm", "-56.0mm", "" + lineHeight + "mm", "56mm", 2, 0);
   lineHeight += 3;

   LODOPB.ADD_PRINT_TEXT("" + lineHeight + "mm", "2mm", "20mm", "5mm", "合计");
   LODOPB.ADD_PRINT_TEXT("" + lineHeight + "mm", "25mm", "33mm", "5mm", "金额：" + data.checkout_price); //
   lineHeight += 5;
   LODOPB.ADD_PRINT_TEXT("" + lineHeight + "mm", "1.9mm", "35mm", "5mm", '桌号：' + data.table);
   //lineHeight+=5;
   //LODOPB.ADD_PRINT_TEXT(""+lineHeight+"mm","1.9mm","24mm","5mm","服务员：001");
   lineHeight += 5;
   LODOPB.ADD_PRINT_TEXT("" + lineHeight + "mm", "1.9mm", "30mm", "5mm", "人数：" + data.ren + " 位");
   //LODOPB.ADD_PRINT_TEXT(""+lineHeight+"mm","30mm","34mm","5mm","备注：");
   //lineHeight+=5;

   lineHeight += 5;
   LODOPB.ADD_PRINT_TEXT("" + lineHeight + "mm", "1.9mm", "59.3mm", "5.3mm", "打印日期：");
   LODOPB.SET_PRINTER_INDEXA(2);
   LODOPB.SET_PRINT_PAGESIZE(3, "55mm", lineHeight, "CreateCustomPage");
   //  LODOP.SET_PREVIEW_WINDOW(0, 0, 0,1024 , 700,"预览查看.开始打印");
   // LODOP.SET_SHOW_MODE("LANDSCAPE_DEFROTATED",1);//横向时的正向显示
   //  LODOP.SET_SHOW_MODE("SETUP_ENABLESS", 11111111000001);
   // LODOP.PRINT_DESIGN(); //设置打印样式
   //LODOP.PREVIEW();
   LODOPB.PRINT();
}

var CreatedOKLodop7766 = null;

//====判断是否需要安装CLodop云打印服务器:====
function needCLodop() {
   try {
      var ua = navigator.userAgent;
      if (ua.match(/Windows\sPhone/i) != null) return true;
      if (ua.match(/iPhone|iPod/i) != null) return true;
      if (ua.match(/Android/i) != null) return true;
      if (ua.match(/Edge\D?\d+/i) != null) return true;

      var verTrident = ua.match(/Trident\D?\d+/i);
      var verIE = ua.match(/MSIE\D?\d+/i);
      var verOPR = ua.match(/OPR\D?\d+/i);
      var verFF = ua.match(/Firefox\D?\d+/i);
      var x64 = ua.match(/x64/i);
      if ((verTrident == null) && (verIE == null) && (x64 !== null))
         return true;
      else
         if (verFF !== null) {
            verFF = verFF[0].match(/\d+/);
            if ((verFF[0] >= 42) || (x64 !== null)) return true;
         } else
            if (verOPR !== null) {
               verOPR = verOPR[0].match(/\d+/);
               if (verOPR[0] >= 32) return true;
            } else
               if ((verTrident == null) && (verIE == null)) {
                  var verChrome = ua.match(/Chrome\D?\d+/i);
                  if (verChrome !== null) {
                     verChrome = verChrome[0].match(/\d+/);
                     if (verChrome[0] >= 42) return true;
                  };
               };
      return false;
   } catch (err) {
      return true;
   };
};

//====页面引用CLodop云打印必须的JS文件：====
if (needCLodop()) {
   var head = document.head || document.getElementsByTagName("head")[0] || document.documentElement;
   var oscript = document.createElement("script");
   oscript.src = "http://localhost:8000/CLodopfuncs.js?priority=1";
   head.insertBefore(oscript, head.firstChild);

   //引用双端口(8000和18000）避免其中某个被占用：
   oscript = document.createElement("script");
   oscript.src = "http://localhost:18000/CLodopfuncs.js?priority=0";
   head.insertBefore(oscript, head.firstChild);
};

//====获取LODOP对象的主过程：====
function getLodop(oOBJECT, oEMBED) {
   var strHtmInstall = "<br><font color='#FF00FF'>打印控件未安装!点击这里<a href='http://113.10.155.131/install_lodop32.zip' target='_self'>执行安装</a>,安装后请刷新页面或重新进入。</font>";
   var strHtmUpdate = "<br><font color='#FF00FF'>打印控件需要升级!点击这里<a href='http://113.10.155.131/install_lodop32.zip' target='_self'>执行升级</a>,升级后请重新进入。</font>";
   var strHtm64_Install = "<br><font color='#FF00FF'>打印控件未安装!点击这里<a href='http://113.10.155.131/install_lodop64.zip' target='_self'>执行安装</a>,安装后请刷新页面或重新进入。</font>";
   var strHtm64_Update = "<br><font color='#FF00FF'>打印控件需要升级!点击这里<a href='http://113.10.155.131/install_lodop64.zip' target='_self'>执行升级</a>,升级后请重新进入。</font>";
   var strHtmFireFox = "<br><br><font color='#FF00FF'>（注意：如曾安装过Lodop旧版附件npActiveXPLugin,请在【工具】->【附加组件】->【扩展】中先卸它）</font>";
   var strHtmChrome = "<br><br><font color='#FF00FF'>(如果此前正常，仅因浏览器升级或重安装而出问题，需重新执行以上安装）</font>";
   var strCLodopInstall = "<br><font color='#FF00FF'>CLodop云打印服务(localhost本地)未安装启动!点击这里<a href='CLodopPrint_Setup_for_Win32NT.zip' target='_self'>执行安装</a>,安装后请刷新页面。</font>";
   var strCLodopUpdate = "<br><font color='#FF00FF'>CLodop云打印服务需升级!点击这里<a href='CLodopPrint_Setup_for_Win32NT.zip' target='_self'>执行升级</a>,升级后请刷新页面。</font>";
   var LODOP;
   try {
      var isIE = (navigator.userAgent.indexOf('MSIE') >= 0) || (navigator.userAgent.indexOf('Trident') >= 0);
      if (needCLodop()) {
         try {
            LODOP = getCLodop();
         } catch (err) { };
         if (!LODOP && document.readyState !== "complete") {
            alert("C-Lodop没准备好，请稍后再试！");
            return;
         };
         if (!LODOP) {
            if (isIE) document.write(strCLodopInstall);
            else
               document.documentElement.innerHTML = strCLodopInstall + document.documentElement.innerHTML;
            return;
         } else {

            if (CLODOP.CVERSION < "2.0.9.0") {
               if (isIE) document.write(strCLodopUpdate);
               else
                  document.documentElement.innerHTML = strCLodopUpdate + document.documentElement.innerHTML;
            };
            if (oEMBED && oEMBED.parentNode) oEMBED.parentNode.removeChild(oEMBED);
            if (oOBJECT && oOBJECT.parentNode) oOBJECT.parentNode.removeChild(oOBJECT);
         };
      } else {
         var is64IE = isIE && (navigator.userAgent.indexOf('x64') >= 0);
         //=====如果页面有Lodop就直接使用，没有则新建:==========
         if (oOBJECT != undefined || oEMBED != undefined) {
            if (isIE) LODOP = oOBJECT;
            else LODOP = oEMBED;
         } else if (CreatedOKLodop7766 == null) {
            LODOP = document.createElement("object");
            LODOP.setAttribute("width", 0);
            LODOP.setAttribute("height", 0);
            LODOP.setAttribute("style", "position:absolute;left:0px;top:-100px;width:0px;height:0px;");
            if (isIE) LODOP.setAttribute("classid", "clsid:2105C259-1E0C-4534-8141-A753534CB4CA");
            else LODOP.setAttribute("type", "application/x-print-lodop");
            document.documentElement.appendChild(LODOP);
            CreatedOKLodop7766 = LODOP;
         } else LODOP = CreatedOKLodop7766;
         //=====Lodop插件未安装时提示下载地址:==========
         if ((LODOP == null) || (typeof (LODOP.VERSION) == "undefined")) {
            if (navigator.userAgent.indexOf('Chrome') >= 0)
               document.documentElement.innerHTML = strHtmChrome + document.documentElement.innerHTML;
            if (navigator.userAgent.indexOf('Firefox') >= 0)
               document.documentElement.innerHTML = strHtmFireFox + document.documentElement.innerHTML;
            if (is64IE) document.write(strHtm64_Install);
            else
               if (isIE) document.write(strHtmInstall);
               else
                  document.documentElement.innerHTML = strHtmInstall + document.documentElement.innerHTML;
            return LODOP;
         };
      };
      if (LODOP.VERSION < "6.2.1.5") {
         if (needCLodop())
            document.documentElement.innerHTML = strCLodopUpdate + document.documentElement.innerHTML;
         else
            if (is64IE) document.write(strHtm64_Update);
            else
               if (isIE) document.write(strHtmUpdate);
               else
                  document.documentElement.innerHTML = strHtmUpdate + document.documentElement.innerHTML;
         return LODOP;
      };
      //===如下空白位置适合调用统一功能(如注册语句、语言选择等):===
      //  LODOP.SET_LICENSES("","13528A153BAEE3A0254B9507DCDE2839","","");
      LODOP.SET_LICENSES("易族智汇（北京）科技有限公司", "9D32CB078EE17DE9676D08BCA683CAEB", "", "");
      //LODOP.SET_LICENSES("桥掌柜","9D32CB078EE17DE9676D08BCA683CAEB","","");
      //===========================================================
      return LODOP;
   } catch (err) {
      alert("getLodop出错:" + err);
   };
};


module.exports = {
   netPrint: netPrint
}
